iT邦幫忙

2024 iThome 鐵人賽

DAY 2
0

什麼是.NET (Core)


緣起
.NET(Core)是微軟新世代開發的技術,主要的變革是.NET 平台的統一以及支援了跨平台的開發,使的開發不再侷限於傳統.NET Framework支援的Windows系統,而是橫跨了Windows、macOS、Linux三大平台,同時也更新了Runtime、框架函式庫、基礎服務、CLI命令工具。


但我們所知,現行的.NET(Core)版本已經不是當初剛發行.NET7了,因為當時雖然推出了初步的大改革,但安全維護的支援期其實是較短的標準期支援(Standard-term support),時長是18個月,所以我自學所參考的教科書還是.NET 7的版本,但現在已經更新到了.NET 8了,因此接下來的內容我會再比較兩個版本間的差異供大家參考~✨

名詞解釋📃
1.CLI
命令列介面(Command-line interface),是在圖形化使用者介面普及前最為廣泛的使用者介面,使用者通過鍵盤輸入指令,電腦接收到指令後予以執行。
簡單來說這個酷東東的概念就有點像大家都用過的cmd,是用文字指令就可以操作電腦~(雖然跟圖形介面比是很容易打錯啦XD)

.NET 7 vs .NET 8
那接下來就來談談.NET 7 與.NET 8的差異啦~
首先我們看到的就是每個人最關心的更新維護及安全性支援問題
.NET 7從發表到結束支援僅有短短的18個月,而新推出的.NET 8 所用的長期支援期間為三年。
然後較重要的差異就是圖上所示的效能及新功能,不過最大的差異還是...快!超快!超級快!感覺可以比牙買加閃電、閃電麥坤還快的程度(太誇張)
在升級成.NET 8之後許多使用者最大的反饋就是運行速度比.NET 7快速很多,其原因我們可以歸功AVX-512指令集,以及支援SIMD指令等功能。
還有就是預設啟用名為動態配置檔案導向最佳化(Dynamic Profile-Guided Optimization,PGO)的程式碼生成器,可以依照實時的狀況去最佳化程式碼!
總的來說微軟確實是在效能上做了非常多的努力,快還要更快!=͟͟͞͞( Ꙭ)

對了,在找資料的時候我有發現一周前新上線了一個叫做.NET 9 RC1(Release Candidate)的.NET候選發布版本,這個版本大致上的更動我會放在名詞解釋的欄位,大家有興趣可以看看~

https://ithelp.ithome.com.tw/upload/images/20240916/20167550tv6VJsCxdc.png

名詞解釋📃
1.tar
tar是Unix和類Unix系統上的歸檔打包工具,可以將多個檔案合併為一個檔案~在撰寫專案後如果需要轉傳給別人的話可以有效的協助減少檔案大小噢!
2.SIMD
單指令流多資料流(Single Instruction Multiple Data),是一種採用一個控制器來控制多個處理器,同時對一組資料中的每一個分別執行相同的操作,用打遊戲的說法就是你一個人控制超多台手機然後刷遊戲副本的概念,這麼一來就可以用最短的時間存到最多的素材~ദി ˉ͈̀꒳ˉ͈́ )✧(有夠宅的形容)
3. .NET 9 RC1
此次候選發布版本的更新包括增強的WebSocket API、新的壓縮選項、高級SignalR追蹤以及.NET MAUI的更新,以改善文字清晰度等,感覺不知不覺才剛開始了解.NET 8就要準備迎接.NET 9了呢XD

.NET 名詞超簡易圖解

首先我們看到的這張圖就將.NET家族的範圍層級由廣至狹排列,依序如下⬇️
1️⃣.NET Core
.NET Core屬於一種開發的平台框架,與上一代的.NET Framework是同一種範圍層級喔噢!
2️⃣ASP.NET Core
而到了ASP.NET Core就進入到我們的網頁技術層面了,它是一種Web應用程式的類別庫噢!
3️⃣ASP.NET Core MVC
接著到了ASP.NET Core MVC範圍就更加縮小了,就將範圍層級限制在了用MVC框架開發的專案內~

不知道大家看完這段文字+圖片之後有沒有稍微搞懂一點到底這些名詞誰是誰了~
反正我是寫完這篇文章才終於搞懂的...( ´ཫ`)
(微軟取名根本就像那種把家裡小孩全都取名叫志○系列的家庭,這邊先跟所有的志○說抱歉)
https://ithelp.ithome.com.tw/upload/images/20240916/20167550VTLDbd6RT5.png

那麼第二天的文章就到這邊結束啦~
明天會再跟各位一起了解什麼是MVC架構~See ya!(。•̀ᴗ-)

參考文章:
微軟發布最新.NET 8長期支援版本,雲端、AI應用支援再強化
Key Differences Between .NET 7 and .NET 8: What Changed?
.NET 9 RC1


上一篇
Day1:序
下一篇
DAY3:什麼是MVC架構(Model-view-controller)
系列文
ASP.NET Core 30日成長路13
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言